//package com.talent.web.config.wx;
//
//import com.wechat.pay.java.core.Config;
//import com.wechat.pay.java.core.RSAAutoCertificateConfig;
//import com.wechat.pay.java.core.notification.NotificationConfig;
//import com.wechat.pay.java.core.notification.NotificationParser;
//import com.wechat.pay.java.service.payments.app.AppService;
//import lombok.RequiredArgsConstructor;
//import org.springframework.context.annotation.Bean;
//import org.springframework.context.annotation.Configuration;
//
///**
// * @ClassName：TlWxPayConfig
// * @Author: hszhou
// * @Date: 2025/3/28 11:10
// * @Description: 必须描述类做什么事情, 实现什么功能
// */
//@Configuration
//@RequiredArgsConstructor
//public class TlWxPayConfig {
//
//    private final WxPayProperties wxPayProperties;
//
//
//    /**
//     * 直连商户
//     * @return AppService
//     */
//    @Bean
//    public AppService appService(){
//
//        Config config =
//                new RSAAutoCertificateConfig.Builder()
//                        .merchantId(wxPayProperties.getMerchantId())
//                        // 使用 com.wechat.pay.java.core.util 中的函数从本地文件中加载商户私钥，商户私钥会用来生成请求的签名
//                        .privateKeyFromPath(wxPayProperties.getPrivateKeyPath())
//                        .merchantSerialNumber(wxPayProperties.getMerchantSerialNumber())
//                        .apiV3Key(wxPayProperties.getApiV3Key())
//                        .build();
//        return new AppService.Builder().config(config).build();
//    }
//
//
//    /**
//     * 解析回调
//     * @return 回调解析
//     */
//    @Bean
//    public NotificationParser notificationParser(){
//        // 没有的话，则构造一个
//        NotificationConfig config = new RSAAutoCertificateConfig.Builder()
//                .merchantId(wxPayProperties.getMerchantId())
//                .privateKeyFromPath(wxPayProperties.getPrivateKeyPath())
//                .merchantSerialNumber(wxPayProperties.getMerchantSerialNumber())
//                .apiV3Key(wxPayProperties.getApiV3Key())
//                .build();
//        // 初始化 NotificationParser
//        return new NotificationParser(config);
//    }
//
//
//}
